package com.ttmusic.utils.baidu;

import com.ttmusic.entity.AbstractMusic;
import com.ttmusic.entity.AbstractMusic.MusicType;
import com.ttmusic.utils.ChineseToEnglish;

import android.net.Uri;
import android.os.Parcel;

/**
 * 百度音乐API通过歌曲id搜索到的歌曲详细信息 主要是下载地址
 * @author Administrator
 *
 */
public class SongInfoDownload extends AbstractMusic{
	
	private long songId;		//歌曲id   	*****
	private String songName;	//歌曲名		*****
	private long artistId;		//歌手id		*****
	private String artistName;	//歌手名		*****
	private long albumId;		//专辑id		*****
	private String albumName;	//专辑名		*****
	private String songPicSmall;
	private String songPicBig;
	private String songPicRadio;//歌曲图片		*****
	private String lrcLink;		//歌词url		*****
	private String version;
	private String copyType;
	private int time;			//时长		*****
	private String songLink;	//歌曲文件url	*****
	private String showLink;	//歌曲文件url
	private long size;			//歌曲文件大小
	private String format;		//文件后缀名
	private MusicType type;		//歌曲类型
	public String getFormat() {
		return format;
	}
	public void setFormat(String format) {
		this.format = format;
	}
	public long getSongId() {
		return songId;
	}
	public void setSongId(long songId) {
		this.songId = songId;
	}
	public String getSongName() {
		return songName;
	}
	public void setSongName(String songName) {
		this.songName = songName;
	}
	public long getArtistId() {
		return artistId;
	}
	public void setArtistId(long artistId) {
		this.artistId = artistId;
	}
	public String getArtistName() {
		return artistName;
	}
	public void setArtistName(String artistName) {
		this.artistName = artistName;
	}
	public long getAlbumId() {
		return albumId;
	}
	public void setAlbumId(long albumId) {
		this.albumId = albumId;
	}
	public String getAlbumName() {
		return albumName;
	}
	public void setAlbumName(String albumName) {
		this.albumName = albumName;
	}
	public String getSongPicSmall() {
		return songPicSmall;
	}
	public void setSongPicSmall(String songPicSmall) {
		this.songPicSmall = songPicSmall;
	}
	public String getSongPicBig() {
		return songPicBig;
	}
	public void setSongPicBig(String songPicBig) {
		this.songPicBig = songPicBig;
	}
	public String getSongPicRadio() {
		return songPicRadio;
	}
	public void setSongPicRadio(String songPicRadio) {
		this.songPicRadio = songPicRadio;
	}
	public String getLrcLink() {
		return lrcLink;
	}
	public void setLrcLink(String lrcLink) {
		this.lrcLink = lrcLink;
	}
	public String getVersion() {
		return version;
	}
	public void setVersion(String version) {
		this.version = version;
	}
	public String getCopyType() {
		return copyType;
	}
	public void setCopyType(String copyType) {
		this.copyType = copyType;
	}
	public int getTime() {
		return time;
	}
	public void setTime(int time) {
		this.time = time;
	}
	public String getSongLink() {
		return songLink;
	}
	public void setSongLink(String songLink) {
		this.songLink = songLink;
	}
	public String getShowLink() {
		return showLink;
	}
	public void setShowLink(String showLink) {
		this.showLink = showLink;
	}
	public long getSize() {
		return size;
	}
	public void setSize(long size) {
		this.size = size;
	}
	public SongInfoDownload() {}
	@Override
	public int describeContents() {
		return 0;
	}
	@Override
	public void writeToParcel(Parcel dest, int flags) {
		
	}
	@Override
	public AbstractMusic createFromParcel(Parcel source) {
		return null;
	}
	@Override
	public AbstractMusic[] newArray(int size) {
		return null;
	}
	@Override
	public String getPath() {
		return songLink;
	}
	@Override
	public Uri getDataSoure() {
		return Uri.parse(songLink);
	}
	@Override
	public Integer getDuration() {
		return time * 1000;
	}
	public void setType(MusicType type) {
		this.type = type;
	}
	@Override
	public MusicType getType() {
		if(null != this.type) return this.type;
		return MusicType.Online;
	}
	@Override
	public String getTitle() {
		return songName;
	}
	@Override
	public String getArtist() {
		return artistName;
	}
	@Override
	public String getPinYinHeadCharofTitle() {
		return ChineseToEnglish.getPinYinHeadChar(songName);
	}
	@Override
	public String getPinYinHeadCharofArtist() {
		return ChineseToEnglish.getPinYinHeadChar(artistName);
	}
	@Override
	public String getPinYinHeadCharofAlbum() {
		return ChineseToEnglish.getPinYinHeadChar(albumName);
	}
	@Override
	public String getArtPic() {
		return songPicRadio;
	}
	@Override
	public int blurValueOfPlaying() {
		return 0;
	}

}
